home *** CD-ROM | disk | FTP | other *** search
/ HyperLib 1997 Winter - Disc 1 / HYPERLIB-1997-Winter-CD1.ISO.7z / HYPERLIB-1997-Winter-CD1.ISO / オンラインウェア / MLT / FracPPC 1.1.sit / FracPPC User Manual < prev    next >
Text File  |  1996-09-06  |  18KB  |  390 lines

  1.  
  2.  
  3.  
  4.  
  5.  
  6.  
  7.  
  8.  
  9.  
  10.  
  11. September 6, 1996
  12.  
  13. FracPPC is a program for generating fractals on the Power Macintosh. It will only run on Macintoshes equipped with the PowerPC microprocessor. FracPPC takes advantage of the floating point capabilities of the PowerPC to allow rapid zooms into the Mandelbrot set and associated Julia sets. FracPPC v1.1 is limited to generating Mandelbrot and Julia fractals, although the next version will be able to generate many other types of fractals as well.
  14.  
  15. This document gives a short description of the menu commands and dialog boxes used in FracPPC. Let's begin by defining some terms used to describe the main features of the program.
  16.  
  17. FracPPC Basics
  18.  
  19. In order to understand FracPPC you need to understand dwells, regions, color maps and the interaction between them.
  20.  
  21. Mathematically, fractals of the type currently displayed by FracPPC are defined by an iterative formula defined on the set of complex numbers. The dwell for a particular complex number is defined as the number of times the iterative formula can be recalculated starting at that complex number before the distance of the result from the origin exceeds a pretermined radius. The members of the Mandelbrot set (or of a Julia set) are those complex numbers that have infinite dwell values. In practice, we set a limit on the number of iterations and if we reach that limit without exceeding the radius, we assume the dwell value is infinite.
  22.  
  23. Interesting images are created generally by assigning a color to each dwell value. In FracPPC we call this assignment a color map.
  24.  
  25. Although technically a fractal consists of those points for which the dwells are infinite, it is usually the non-infinite dwell values near the border of the fractal that give rise to interesting images. In this document, then, we will informally refer to the entire set of points with dwell values assigned to each point as a fractal.
  26.  
  27. FracPPC allows a fractal to be split up into regions. Each point in a fractal belongs to exactly one region. The main feature of regions is that each region has its own color map. The criteria by which a fractal may be split into regions varies for each fractal. (Right now there are only two types of fractals supported by FracPPC, Mandelbrot and Julia, and they happen to have the same set of criteria for region splits, but in the future there will be other fractal types supported by FracPPC with some different ways of splitting into regions).
  28.  
  29. To give an example: the default Mandelbrot fractal has only one region, the exterior (i.e. all points that do not have infinite dwell values). However, using the "Regionsノ" command we can split the exterior into two regions: all points with even dwell values are in one region, all points with odd dwell values are in the other region. We can then apply completely different color maps to each region.
  30.  
  31. Color Maps
  32.  
  33. Every region has a color map. Predefined color maps can be assigned to a region from the Palette menu. A random color map can be assigned by choosing Randomize from the Palette menu, or equivalently by pressing Command-R. Any of these color maps may be editied in the メColor Map Editorモ window. The structure of a color map is as follows: a color map contains between two and thirty two color breaks. A color break is a dwell value and an associated color. The color breaks are ordered by increasing dwell value.
  34.  
  35. Points in a region are colored as follows: if the dwell at a point is in the color break list, the point is assigned the corresponding color for that color break. If not, then the dwell generally lies between two color breaks. In this case a linear gradient of colors is generated between the two color breaks and the point is assigned the color corresponding to the dwell's position along  the color gradient.
  36.  
  37. This color map can be modified by a power law if the メmapping exponenetモ is different from one. If the mapping exponent is メgモ then a mapped dwell is generated according to the equation:
  38.  
  39. mapped dwell = maxDwell * (dwell/maxDwell)^g
  40.  
  41. The mapped dwell is then looked up in the color map and the resulting color is assigned to the point.
  42.  
  43. Tour of the FracPPC Windows 
  44.  
  45. Choosing メAbout FracPPCノモ in the Apple menu will bring up the メAboutノモ box:
  46.  
  47.  
  48.  
  49.  
  50.  
  51.  
  52.  
  53.  
  54.  
  55.  
  56.  
  57.  
  58.  
  59.  
  60.  
  61.  
  62.  
  63. This is the most important window in the program, as it reveals the name of the programユs author. Meditating upon this window is rumored to bring good luck and cure halitosis.
  64.  
  65. Upon opening an existing fractal parameter file or by choosing New from the File menu to create a new fractal, the user will see the fractal window, containing the fractal image and a palette of some commonly used tools:
  66.  
  67.  
  68.  
  69.  
  70.  
  71.  
  72.  
  73.  
  74.  
  75.  
  76.  
  77.  
  78.  
  79.  
  80.  
  81.  
  82. The fractal window can be resized; scroll bars will appear if the window is smaller than the total image size. The four tools in the palette at the left side of the window are (in order):
  83.  
  84. Zoom-in tool ム used to zoom deeper into the fractal. The linear scale is magnified by two when this tool is clicked anywhere in the fractal, with the point clicked being used as the center of the new view. If the Command key is held down while clicking the zoom-in tool, the scale will be magnified by four rather than by two.
  85.  
  86. Zoom-out tool ム reverse of the zoom-in tool. The linear scale is expanded by two when this tool is clicked anywhere in the fractal, with the point clicked being used as the center of the new view. If the Command key is held down while clicking the zoom-in tool, the scale will be expanded by four rather than by two.
  87.  
  88. Julia tool ム Used to create a new fractal, a Julia set based on the point clicked with Julia tool. Clicking on a black portion of the set (i.e. part of the Mandelbrot set itself) will create a メsolidモ Julia set.
  89.  
  90. The Julia tool is only enabled when viewing part of the Mandelbrot set; it is disabled when viewing a Julia set.
  91.  
  92. Selection tool ム Used to select a portion of the fractal. When a selection is made with this tool, the three items in the Fractal menu:
  93.  
  94.      Extract
  95.      Magnify
  96.      Extract & Magnify
  97.  
  98. will become enabled. Extract will create a new window containing the selection without changing the scale. Magnify zooms the current window to contain the selection without changing the image area (the aspect ratio of the image will change to match the aspect ratio of the selection, however). Extract & Magnify has the same effect as Magnify but opens a new window for the magnified selection.
  99.  
  100. The Parametersノ dialog box can be used to change the parameters that define the image being viewed. For a portion of the Mandelbrot set the dialog box looks like this:
  101.  
  102.  
  103.  
  104.  
  105.  
  106.  
  107.  
  108.  
  109.  
  110.  
  111.  
  112.  
  113.  
  114.  
  115.  
  116.  
  117. Dwell Limit ム the total number of iterations allowed for each point in the fractal. If this limit is reached without exceeding the escape radius, the point is considered to be in the Mandelbrot set.
  118.  
  119. Escape Radius ム in the process of iterating the fractal formula, if the absolute value of the iterated value exceeds this number, iteration is halted and the number of iterations is recorded as the メdwell valueモ for the starting point of the iteration.
  120.  
  121. Pixels ム The size of the image in pixels is deterimined by the h and v fields. If either or both is changed, the image is resized if there is memory available for the new size. 
  122.  
  123. Center ム determines the center of the image in the complex plane.
  124.  
  125. Resolution ム determines the total area covered by the image in the complex plane; the smaller this number is, the deeper the zoom.
  126.  
  127. For a Julia set the Parametersノ dialog box is very similar:
  128.  
  129.  
  130.  
  131.  
  132.  
  133.  
  134.  
  135.  
  136.  
  137.  
  138.  
  139.  
  140.  
  141.  
  142.  
  143.  
  144.  
  145.  
  146. There are two additional fields to set in this window, for the real and imaginary parts of the Julia set constant C used in the iterative operation z^2 + C -> z that defines the Julia set.
  147.  
  148. Choosing the menu item Color Mapノ brings up the following window:
  149.  
  150.  
  151.  
  152.  
  153.  
  154.  
  155.  
  156.  
  157.  
  158.  
  159.  
  160.  
  161.  
  162.  
  163.  
  164.  
  165.  
  166. This dialog box controls the way in which color maps from the Palette menu or the Color Map Editors are applied to the regions of a fractal, and also controls how random color maps are generated.
  167.  
  168. Random Color Limit ム determines the maximum number of color breaks in a random color map. The number of color breaks in a random map will vary randomly between two and this number.
  169.  
  170. Map Limits ム this item is intended to control how the maximum and minimum dwell limits mapped vary with a zoom into the fractal, but it is not really operationg in a useful manner in this beta version of FracPPC and will likely be changed in the future, so it is probably best to ignore it at present.
  171.  
  172. Randomize Color Breaks ム If this is not checked, color breaks in a random color map will be spaced uniformly between the minimum and maximum dwell. When checked, the spacing in random color maps will also be randomized.
  173.  
  174. Apply Same Map To All Regions ム Causes a map applied to any region to be applied to all other regions automatically.
  175.  
  176. Randomize All Regions ム If not checked, random maps are generated only for the current regions (see the section on the color map editor to see how to change the current region). If checked, commanding "Randomize" generates a different random map for each existing region. However, this option is overriden by メApply Same Map To All Regions.モ
  177.  
  178. Choosing the menu item Color Renderingノ from the Fractal menu brings up the following window:
  179.  
  180.  
  181.  
  182.  
  183.  
  184.  
  185.  
  186.  
  187.  
  188.  
  189.  
  190.  
  191.  
  192.  
  193.  
  194. Macs with 24 bit displays will automatically generate 24 bit color fractals. This dialog box allows Macs with displays of lower depth generate higher depth fractals offscreen. The resulting map will then be copied to the screen with optional dithering.
  195.  
  196. The value set in this window also affect the Printノ and Save As PICTノ commands. The picture sent to the printer or PICT file will be generated at the depth currently selected in this window. You can change the depth at any time, even after the dwells have been generated.
  197.  
  198. Choosing Regionsノ from the Fractal menu brings up the following window:
  199.  
  200.  
  201.  
  202.  
  203.  
  204.  
  205.  
  206.  
  207.  
  208.  
  209.  
  210.  
  211.  
  212.  
  213.  
  214.  
  215.  
  216.  
  217.  
  218.  
  219.  
  220.  
  221.  
  222.  
  223. The contents of this window will possibly be different for fractal types supported by future versions of FracPPC. For the current version this is the window you will see for Mandelbrot and Julia fractals.
  224.  
  225. Exterior/Split by Iteration (Even/Odd) ム Checking this splits the Exterior region into two regions, based on whether the dwell value is even or odd. This produces a characterisic "zebra" effect.
  226.  
  227. Exterior/Skip by ム only effective if メSplit by Iterationモ is checked. This causes the even and odd bands to be wider than one dwell. It is sometimes useful for zooms where the dwell values change so rapidly that simply splitting according to even or add dwells does not produce a coherent pattern. The メSkip byモ value determines the width of the bands.
  228.  
  229. Stalks/Stalks On ム Causes the Exterior region to be split into Exterior and Stalk regions.
  230.  
  231. A point is considered to be part of the Stalk region if, during the iterative process, one of the intermediate points generated in the iteration process (the set of all these points is called the orbit) passes within a given width メepsilonモ of the real or imaginary axis.
  232.  
  233. Furthermore, the dwell value assigned to a point in the stalk region is not its actual dwell value, but a value based on the distance of its orbit from real or imaginary axis, normalized by the maximum dwell value for that fractal. Points with orbits that pass very close to an axis get very small dwell values, points with orbits farther from an axis get larger dwell values.
  234.  
  235. Stalks/Stalk Width ム Determines the distance メepsilonモ from the real & imaginary axes that the orbit must pass within for a point to be considered part of the Stalk region.
  236.  
  237. Stalks/Region Split ム Further splits the Stalk region. This menu offers the following choices:
  238.  
  239. None ム Does not further split the Stalk region.
  240.  
  241. Split by Axis (Real/Imag) ム Splits stalks into two separate regions based on whether the orbit passes close to the real or the imaginary axis.
  242.  
  243. Split by Orbit (Even/Odd) ム Splits stalks into two separate regions based on whether the number of iterations where the orbit passes closest to an axis is even or odd.
  244.  
  245. Split by Dwell (Even/Odd) ム Splits stalks into two separate regions based on whether the actual dwell value is even or odd.
  246.  
  247. Stalks/Skip by ム Only applies if メSplit by Orbit (Even/Odd)モ or メSplit by Dwell (Even/Odd)モ is selected. Increases the width of the bands generated by these option in the same manner as the メSkip byモ parameter for the Exterior region.
  248.  
  249. Selecting the Preferences item in the Fractal menu brings up the following dialog box:
  250.  
  251.  
  252.  
  253.  
  254.  
  255.  
  256.  
  257.  
  258.  
  259.  
  260.  
  261.  
  262.  
  263.  
  264.  
  265.  
  266.  
  267.  
  268.  
  269.  
  270.  
  271. Fractal Generation Time - The time in milliseconds that is spent calculating dwell values before allowing other process to have CPU time. Increasing this value speeds up fractal generation somewhat, although very large values will make the computer less responsive.
  272.  
  273. Save Dwells - If checked, the dwell values are saved when a fractal is saved to a file, so they don't have to be regenerated when the file is reopened. Since this option makes the file very large and many fractals can be regenerated fairly quickly, you probably won't want to use this option very often.
  274.  
  275. Center (If Possible) When Printing - If the total area of your fractal image is greater than the printable area provided by the printer and Page Setup options you have selected, then this option has no effects; the fractal will be printed on multiple pages, as many as it takes to print the image.
  276.  
  277. However, if your fractal image is smaller than the printable area of one page, then checking this option instructs FracPPC to center the image on the page. If this option is not checked, the image will be printed justified to the top left corner of the printable area of the page.
  278.  
  279. Open Window On Startup - These options allow you to determine which windows will be opened initially when FracPPC is started.
  280.  
  281.      ・ Statistics - Statistics floating window is visible on startup
  282.      ・ Cursor - Cursor floating window is visible on startup
  283.      ・ Color Map Editor - Color Map Editor window is visible on startup
  284.      ・ New Fractal Document - a new fractal is opened on startup
  285.  
  286.  
  287. Floating Windows
  288.  
  289. There are three floating windows that show information about the fractal in the frontmost fractal window.
  290.  
  291.  
  292.  
  293.  
  294.  
  295.  
  296.  
  297.  
  298.  
  299. The cursor window shows the region, dwell value, and complex coordinates of the point where the cursor is currently located.
  300.  
  301.  
  302.  
  303.  
  304.  
  305.  
  306.  
  307.  
  308.  
  309.  
  310. The Statistics window shows some facts about the fractal in the frontmost window: the minimum and maximum dwell values, the time elapsed while generating the fractal, and the actual time the CPU required to generate the fractal.
  311.  
  312.  
  313.  
  314.  
  315.  
  316.  
  317.  
  318.  
  319.  
  320.  
  321.  
  322.  
  323.  
  324.  
  325. The Color Map Editor is used to modify the color map. It is very crude right now and will definitely be replaced with a better editor in the next revision of FracPPC. Right now it at least allows the color map data structure to be tweaked, albeit in a clumsy fashion.
  326.  
  327. Region - This popup menu selects the current region. This sets the region not only for the color map editor but also for the commands in the Palette menu.
  328.  
  329. Mode - This popup menu offers three choices: Auto, Fixed and Wrap. The mode determines how a color map will adjust when it is first mapped to a fractal region.
  330.  
  331. ・ Auto - The minimum and maximum dwell (dwell values for the first and last control points) will be scaled to match the minimum and maximum dwell in the fractal. Intervening dwells will be scaled accordingly.
  332.  
  333. ・ Fixed - The minimum and maximum dwell do not change unless they are manually adjusted in the color map editor.
  334.  
  335. ・ Wrap - The minimum and maximum dwell do not change; however, after the maximum dwell, the color map wraps around. After the maximum dwell, the color map is reproduced, but scaled by the wrap factor.
  336.  
  337. # of control points - Displays the number of color breaks in the color map. Adding and deleting color breaks changes this number.
  338.  
  339. Control Point - sets the number of the color break currently being edited
  340.  
  341. Dwell - sets the dwell value for the current color break (the color breaks are ordered by dwell value, so if changing this number changes its place in the color break list, the control point number changes).
  342.  
  343. If the Uniform Control Point Distribution option is checked, this field will not be visible, as the dwell values at each control point will be determined by FracPPC.
  344.  
  345. Uniform Control Point Distribution - if this is checked, the control points in the map are distributed uniformly between the maximum and minimum dwell value. All control points are equidistant.
  346.  
  347. If this option is checked, the "Dwell" field will disappear. When unchecked, the Dwell field will reappear with the dwells distributed uniformly.
  348.  
  349. Color Control - the color square displays the color assigned to the current color break. Click on this to bring up the Color Picker to change the color.
  350.  
  351. Add - adds another color break with the same dwell and color as the current color break. You can then modify these values to get a new color break.
  352.  
  353. Delete - deletes the current color break.
  354.  
  355. Mapping Exponent - determines the current power law exponent for this color map. This can also be increased or decreased by pressing the right arrow and left arrow keys respectively. The mapping exponent can be reset to one by pressing the up arrow key. These keys have the same effect even if the color map editor window is not currently visible.
  356.  
  357. Apply - this button causes the changes made in the color map editor to be applied to the current region.
  358.  
  359. Apply Immediately - when checked, any change in the color map editor is applied immediately to the fractal image.
  360.  
  361.  
  362. More info?
  363.  
  364. The latest information can be found on the FracPPC web page, which is currently:
  365.  
  366. http://users.aol.com/ddemars/fracppc.html
  367.  
  368. or check my personal web page at
  369.  
  370. http://www.geocities.com/CapeCanaveral/2315/
  371.  
  372. which will contain a link to some similar info. (I don't know if either of these will be permanent, so if one doesn't work, try the other). 
  373.  
  374. You can always email me with any questions or bug reports.
  375.  
  376. _______________________________
  377. Dennis C. De Mars
  378. email to: demars@netc